package cn.tedu.inner;
//测试  内部类
public class Test4 {
    public static void main(String[] args) {

      A.B a= new A().new B();//内部类的对象
         a.in();//使用内部类的资源in（）
        A bb=new A();//间接访问private私有的资源
        bb.out();
        A.D dd=new A.D();
        //7.使用静态的内部类的资源
        System.out.println(new A.D().d);
        System.out.println(A.D.m);//调用内部类里的静态资源



    }
}
//准备类
class A{//外部类
    String name="jack";
    public void out(){
        //1.在外部类使用内部类的资源age --必须创建内部类的对象
        System.out.println(new B().age);
        System.out.println("out...");
        //5.间接访问C里的资源
        System.out.println(new C().b);//C是A的内部类，所以可以访问private修饰的
    }
    //4、成员内部类：被private修饰
    private class C{
        double b=10;
    }
    //6、成员内部类：被static修饰
    static class D{
         String d="tony";
        static int m=10000;
    }
    //成员内部类：看作是外部类的成员
    class B{
        int age=20;
        public void in(){
            //1.使用外部类的资源name --直接用
            System.out.println(name);
            System.out.println("in...");
        }


    }
}
//准备嵌套这的类
